package com.eascs.ticket.common.dao;

import java.util.List;

import javax.sql.DataSource;

import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import com.eascs.app.dao.PageResult;
import com.eascs.app.dao.ResultSets;
import com.eascs.app.dao.SqlPageQuery;
import com.eascs.app.dao.StoreProcedure;
import com.eascs.app.dao.TableData;

@Repository
public final class ProxyDao extends BaseDao {

	@Override
	public <T> T getByIdWithEntity(T entity) {
		return super.getByIdWithEntity(entity);
	}

	@Override
	public <T> int deleteByIdWithEntity(T entity) {
		return super.deleteByIdWithEntity(entity);
	}

	@Override
	public <T> T getById(Class<T> entityClass, Object... id) {
		return super.getById(entityClass, id);
	}

	@Override
	public <T> int deleteById(Class<T> entityClass, Object... id) {
		return super.deleteById(entityClass, id);
	}

	@Override
	public <T> int insert(T entity) {
		return super.insert(entity);
	}

	@Override
	public <T> int updateById(T entity) {
		return super.updateById(entity);
	}

	@Override
	public <T> List<T> findEntitys(String sql, Class<T> requiredType, Object... params) {
		return super.findEntitys(sql, requiredType, params);
	}

	@Override
	public <T> List<T> findEntitysWithAny(T entity) {
		return super.findEntitysWithAny(entity);
	}

	@Override
	public <T> T findEntityWithAny(T entity) {
		return super.findEntityWithAny(entity);
	}

	@Override
	public <T> List<T> findAllEntitys(Class<T> requiredType) {
		return super.findAllEntitys(requiredType);
	}

	@Override
	public <T> int deleteEntitysWithAny(T entity) {
		return super.deleteEntitysWithAny(entity);
	}

	@Override
	public <T> T findEntity(String sql, Class<T> requiredType, Object... params) {
		return super.findEntity(sql, requiredType, params);
	}

	@Override
	public <T> List<T> findSimpleObjectList(String sql, Class<T> requiredType, Object... params) {
		return super.findSimpleObjectList(sql, requiredType, params);
	}

	@Override
	public <T> T findSimpleObject(String sql, Class<T> requiredType, Object... params) {
		return super.findSimpleObject(sql, requiredType, params);
	}

	@Override
	public Integer findInteger(String sql, Object... params) {
		return super.findInteger(sql, params);
	}

	@Override
	public String findString(String sql, Object... params) {
		return super.findString(sql, params);
	}

	@Override
	public TableData findTableData(String sql, Object... params) {
		return super.findTableData(sql, params);
	}

	@Override
	public List<Object[]> findObjectsList(String sql, Object... params) {
		return super.findObjectsList(sql, params);
	}

	@Override
	public int execute(String sql, Object... params) {
		return super.execute(sql, params);
	}

	@Override
	public int[] batchExecute(String sql, List<Object[]> params) {
		return super.batchExecute(sql, params);
	}

	@Override
	public ResultSets callSP(StoreProcedure storeProcedure) {
		return super.callSP(storeProcedure);
	}

	@Override
	public String insertWithReturnKey(String insertSql, Object... params) {
		return super.insertWithReturnKey(insertSql, params);
	}

	@Override
	public String getSql(String sql) {
		return super.getSql(sql);
	}

	@Override
	public <T> PageResult<T> findDataWithPage(SqlPageQuery<T> sqlPageQuery) {
		return super.findDataWithPage(sqlPageQuery);
	}

	@Override
	public void setDataSource(DataSource dataSource) {
		super.setDataSource(dataSource);
	}

	@Override
	public JdbcTemplate getJdbcTemplate() {
		return super.getJdbcTemplate();
	}

}
